package com.hsgene.version.service;

import com.hsgene.common.util.result.ApiResult;
import com.hsgene.common.util.support.LimitHelper;
import com.hsgene.version.domain.VersionDomain;
import com.hsgene.version.dto.VersionDto;

import java.util.Date;
import java.util.List;

/**
 * @Description: //产品更新管理service
 * @ProjectName: hdas-geneshop
 * @Package: com.hsgene.version.service
 * @Author: 江承良
 * @CreateDate: 2019/1/18 15:08
 * @Version: 1.0
 * Copyright: Copyright (c) 2019
 */
public interface VersionService {

    /***
     * 添加产品更新内容
     * @author jcl
     * @date 2019/1/18 10:12
     * @param versionDomain
     * @return
     */
    ApiResult addVersion(VersionDomain versionDomain);

    /***
     * 产品更新列表查询
     * @author jcl
     * @date 2019/1/18 11:34
     * @param limitHelper 分页条件
     * @param versionNo 版本号
     * @param content 内容
     * @param content 内容
     * @return
     */
    ApiResult versionPages(LimitHelper limitHelper, String versionNo, String content, String orderField, Date
            releaseDateTime);

    /***
     * 查询产品更新具体内容
     * @author jcl
     * @date 2019/1/18 14:20
     * @param id
     * @return
     */
    ApiResult versionById(String id);

    /***
     * 更新内容
     * @author jcl
     * @date 2019/1/18 15:53
     * @param versionDomain
     * @return
     */
    ApiResult updateVersion(VersionDomain versionDomain);

    /***
     * 删除
     * @author jcl
     * @date 2019/1/18 16:10
     * @param id
     * @return
     */
    ApiResult deleteVersion(String id);

    /***
     * 根据版本号查询产品更新详情
     * @author jcl
     * @date 2019/1/18 16:18
     * @param versionNo
     * @return
     */
    ApiResult versionByVersionNo(String versionNo);

    /**
     * @param versionNo 版本号
     * @return com.hsgene.version.dto.VersionDto
     * @description 根据版本号模糊查询更新日志版本信息
     * @author maodi
     * @createDate 2019/1/21 10:24
     */
    List<VersionDto> getVersionsLogs(String versionNo);

    /**
     * @param
     * @return java.util.List<java.lang.String>
     * @description 查询所有版本号
     * @author maodi
     * @createDate 2019/1/21 10:32
     */
    List<String> getVersionsNos();

    /***
     * 检查版本号是否重复
     * @author jcl
     * @date 2019/1/29 10:19
     * @param versionNo 版本号
     * @param versionId 版本id
     * @return
     */
    ApiResult versionNoRepeat(String versionNo,String versionId);
}
